[INFO] fetching crate impeller 0.4.0...
[INFO] checking impeller-0.4.0 against try#a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399 for pr-145770
[INFO] extracting crate impeller 0.4.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate impeller 0.4.0
[INFO] finished tweaking crates.io crate impeller 0.4.0
[INFO] tweaked toml for crates.io crate impeller 0.4.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate impeller 0.4.0 on toolchain a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 719 packages to latest compatible versions
[INFO] [stderr]       Adding arrow v52.2.0 (available: v56.1.0)
[INFO] [stderr]       Adding bevy v0.14.2 (available: v0.16.1)
[INFO] [stderr]       Adding big_space v0.7.0 (available: v0.10.0)
[INFO] [stderr]       Adding hashbrown v0.14.5 (available: v0.15.5)
[INFO] [stderr]       Adding nalgebra v0.33.2 (available: v0.34.0)
[INFO] [stderr]       Adding polars v0.41.3 (available: v0.50.0)
[INFO] [stderr]       Adding polars-arrow v0.41.3 (available: v0.50.0)
[INFO] [stderr]       Adding thiserror v1.0.69 (available: v2.0.16)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 8aeda41b96368f38e60dadb6dab9bddaa63e23deee1d895e8367189b128d5ee6
[INFO] running `Command { std: "docker" "start" "-a" "8aeda41b96368f38e60dadb6dab9bddaa63e23deee1d895e8367189b128d5ee6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8aeda41b96368f38e60dadb6dab9bddaa63e23deee1d895e8367189b128d5ee6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8aeda41b96368f38e60dadb6dab9bddaa63e23deee1d895e8367189b128d5ee6", kill_on_drop: false }`
[INFO] [stdout] 8aeda41b96368f38e60dadb6dab9bddaa63e23deee1d895e8367189b128d5ee6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0832e19c508490985d704182bcdb756bb0cfe766835c99d1ca7de277a629d23a
[INFO] running `Command { std: "docker" "start" "-a" "0832e19c508490985d704182bcdb756bb0cfe766835c99d1ca7de277a629d23a", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]     Checking cfg-if v1.0.3
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]    Compiling semver v1.0.26
[INFO] [stderr]    Compiling zerocopy v0.8.26
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling winnow v0.7.13
[INFO] [stderr]    Compiling thiserror v2.0.16
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]     Checking hash32 v0.2.1
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]     Checking stable_deref_trait v1.2.0
[INFO] [stderr]    Compiling embedded-io-async v0.6.1
[INFO] [stderr]    Compiling serde_json v1.0.143
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking allocator-api2 v0.2.21
[INFO] [stderr]     Checking lazy_static v1.5.0
[INFO] [stderr]     Checking itoa v1.0.15
[INFO] [stderr]     Checking memchr v2.7.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]     Checking ryu v1.0.20
[INFO] [stderr]     Checking embedded-io v0.6.1
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]     Checking fastrand v2.3.0
[INFO] [stderr]     Checking const-fnv1a-hash v1.1.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling indexmap v2.11.0
[INFO] [stderr]    Compiling heapless v0.7.17
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking nanorand v0.7.0
[INFO] [stderr]     Checking flume v0.11.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]    Compiling thiserror-impl-no-std v2.0.2
[INFO] [stderr]    Compiling proc-macro-crate v3.3.0
[INFO] [stderr]     Checking thiserror-no-std v2.0.2
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling bytemuck_derive v1.10.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.16
[INFO] [stderr]    Compiling num_enum_derive v0.7.4
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking bytemuck v1.23.2
[INFO] [stderr]     Checking num_enum v0.7.4
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]    Compiling serde_with_macros v3.14.0
[INFO] [stderr]     Checking cobs v0.3.0
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking bytes v1.10.1
[INFO] [stderr]     Checking serde_with v3.14.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking try_buf v0.1.3
[INFO] [stderr]     Checking ustr v1.1.0
[INFO] [stderr]     Checking postcard v1.1.3
[INFO] [stderr]     Checking simba v0.9.0
[INFO] [stderr]     Checking ndarray v0.16.1
[INFO] [stderr]     Checking nalgebra v0.33.2
[INFO] [stderr]     Checking impeller v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/ser_de.rs:136:49
[INFO] [stdout]     |
[INFO] [stdout] 136 |             let entity_id = EntityId(entity_buf.try_get_u64_le()?);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^ multiple `try_get_u64_le` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `Buf` for the type `&[u8]`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `TryBuf` for the type `B`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 136 -             let entity_id = EntityId(entity_buf.try_get_u64_le()?);
[INFO] [stdout] 136 +             let entity_id = EntityId(Buf::try_get_u64_le(&mut entity_buf)?);
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 136 -             let entity_id = EntityId(entity_buf.try_get_u64_le()?);
[INFO] [stdout] 136 +             let entity_id = EntityId(TryBuf::try_get_u64_le(&mut entity_buf)?);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/ser_de.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let stream_id = StreamId(buf.try_get_u32()?);
[INFO] [stdout]    |                                      -------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]    |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]   --> src/error.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Error {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              `error::Error` implements `From<ShapeError>`
[INFO] [stdout]              `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]              `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]              `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]              `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]              `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/ser_de.rs:49:37
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let time = buf.try_get_u64()?;
[INFO] [stdout]    |                        -------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]    |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]   --> src/error.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Error {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              `error::Error` implements `From<ShapeError>`
[INFO] [stdout]              `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]              `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]              `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]              `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]              `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/ser_de.rs:50:36
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let len = buf.try_get_u32()?;
[INFO] [stdout]    |                       -------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]    |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]   --> src/error.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Error {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              `error::Error` implements `From<ShapeError>`
[INFO] [stdout]              `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]              `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]              `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]              `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]              `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]    --> src/ser_de.rs:209:41
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let prim_type = buf.try_get_u8()?;
[INFO] [stdout]     |                             ------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]    --> src/error.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout] 8   | pub enum Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]     = help: the following other types implement trait `From<T>`:
[INFO] [stdout]               `error::Error` implements `From<ShapeError>`
[INFO] [stdout]               `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]               `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]               `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]               `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]               `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]    --> src/ser_de.rs:212:35
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let dim = buf.try_get_u8()?;
[INFO] [stdout]     |                       ------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]    --> src/error.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout] 8   | pub enum Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]     = help: the following other types implement trait `From<T>`:
[INFO] [stdout]               `error::Error` implements `From<ShapeError>`
[INFO] [stdout]               `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]               `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]               `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]               `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]               `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `Result<_, try_buf::ErrorKind>` cannot be built from an iterator over elements of type `Result<i64, TryGetError>`
[INFO] [stdout]    --> src/ser_de.rs:215:24
[INFO] [stdout]     |
[INFO] [stdout] 215 |             .collect::<Result<_, try_buf::ErrorKind>>()?;
[INFO] [stdout]     |              -------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ value of type `Result<_, try_buf::ErrorKind>` cannot be built from `std::iter::Iterator<Item=Result<i64, TryGetError>>`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromIterator<Result<_, TryGetError>>` is not implemented for `Result<_, try_buf::ErrorKind>`
[INFO] [stdout]             but trait `FromIterator<Result<_, try_buf::ErrorKind>>` is implemented for it
[INFO] [stdout]     = help: for that trait implementation, expected `try_buf::ErrorKind`, found `TryGetError`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]    --> src/ser_de.rs:214:14
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let shape = (0..dim)
[INFO] [stdout]     |                     -------- this expression has type `Range<u8>`
[INFO] [stdout] 214 |             .map(|_| buf.try_get_i64())
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^ `Iterator::Item` is `Result<i64, TryGetError>` here
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]    --> /rustc/a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399/library/core/src/iter/traits/iterator.rs:2014:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0034]: multiple applicable items in scope
[INFO] [stdout]    --> src/ser_de.rs:136:49
[INFO] [stdout]     |
[INFO] [stdout] 136 |             let entity_id = EntityId(entity_buf.try_get_u64_le()?);
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^ multiple `try_get_u64_le` found
[INFO] [stdout]     |
[INFO] [stdout]     = note: candidate #1 is defined in an impl of the trait `Buf` for the type `&[u8]`
[INFO] [stdout]     = note: candidate #2 is defined in an impl of the trait `TryBuf` for the type `B`
[INFO] [stdout] help: disambiguate the method for candidate #1
[INFO] [stdout]     |
[INFO] [stdout] 136 -             let entity_id = EntityId(entity_buf.try_get_u64_le()?);
[INFO] [stdout] 136 +             let entity_id = EntityId(Buf::try_get_u64_le(&mut entity_buf)?);
[INFO] [stdout]     |
[INFO] [stdout] help: disambiguate the method for candidate #2
[INFO] [stdout]     |
[INFO] [stdout] 136 -             let entity_id = EntityId(entity_buf.try_get_u64_le()?);
[INFO] [stdout] 136 +             let entity_id = EntityId(TryBuf::try_get_u64_le(&mut entity_buf)?);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/ser_de.rs:14:51
[INFO] [stdout]    |
[INFO] [stdout] 14 |         let stream_id = StreamId(buf.try_get_u32()?);
[INFO] [stdout]    |                                      -------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]    |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]   --> src/error.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Error {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              `error::Error` implements `From<ShapeError>`
[INFO] [stdout]              `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]              `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]              `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]              `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]              `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/ser_de.rs:49:37
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let time = buf.try_get_u64()?;
[INFO] [stdout]    |                        -------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]    |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]   --> src/error.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Error {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              `error::Error` implements `From<ShapeError>`
[INFO] [stdout]              `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]              `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]              `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]              `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]              `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]   --> src/ser_de.rs:50:36
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let len = buf.try_get_u32()?;
[INFO] [stdout]    |                       -------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]    |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]   --> src/error.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout] 8  | pub enum Error {
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]    = help: the following other types implement trait `From<T>`:
[INFO] [stdout]              `error::Error` implements `From<ShapeError>`
[INFO] [stdout]              `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]              `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]              `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]              `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]              `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]    --> src/ser_de.rs:209:41
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let prim_type = buf.try_get_u8()?;
[INFO] [stdout]     |                             ------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]    --> src/error.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout] 8   | pub enum Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]     = help: the following other types implement trait `From<T>`:
[INFO] [stdout]               `error::Error` implements `From<ShapeError>`
[INFO] [stdout]               `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]               `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]               `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]               `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]               `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: `?` couldn't convert the error to `error::Error`
[INFO] [stdout]    --> src/ser_de.rs:212:35
[INFO] [stdout]     |
[INFO] [stdout] 212 |         let dim = buf.try_get_u8()?;
[INFO] [stdout]     |                       ------------^ the trait `From<TryGetError>` is not implemented for `error::Error`
[INFO] [stdout]     |                       |
[INFO] [stdout]     |                       this can't be annotated with `?` because it has type `Result<_, TryGetError>`
[INFO] [stdout]     |
[INFO] [stdout] note: `error::Error` needs to implement `From<TryGetError>`
[INFO] [stdout]    --> src/error.rs:8:1
[INFO] [stdout]     |
[INFO] [stdout] 8   | pub enum Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^
[INFO] [stdout]     = note: the question mark operation (`?`) implicitly performs a conversion on the error value using the `From` trait
[INFO] [stdout]     = help: the following other types implement trait `From<T>`:
[INFO] [stdout]               `error::Error` implements `From<ShapeError>`
[INFO] [stdout]               `error::Error` implements `From<flume::SendError<T>>`
[INFO] [stdout]               `error::Error` implements `From<postcard::Error>`
[INFO] [stdout]               `error::Error` implements `From<serde_json::Error>`
[INFO] [stdout]               `error::Error` implements `From<std::io::Error>`
[INFO] [stdout]               `error::Error` implements `From<try_buf::ErrorKind>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: a value of type `Result<_, try_buf::ErrorKind>` cannot be built from an iterator over elements of type `Result<i64, TryGetError>`
[INFO] [stdout]    --> src/ser_de.rs:215:24
[INFO] [stdout]     |
[INFO] [stdout] 215 |             .collect::<Result<_, try_buf::ErrorKind>>()?;
[INFO] [stdout]     |              -------   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ value of type `Result<_, try_buf::ErrorKind>` cannot be built from `std::iter::Iterator<Item=Result<i64, TryGetError>>`
[INFO] [stdout]     |              |
[INFO] [stdout]     |              required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = help: the trait `FromIterator<Result<_, TryGetError>>` is not implemented for `Result<_, try_buf::ErrorKind>`
[INFO] [stdout]             but trait `FromIterator<Result<_, try_buf::ErrorKind>>` is implemented for it
[INFO] [stdout]     = help: for that trait implementation, expected `try_buf::ErrorKind`, found `TryGetError`
[INFO] [stdout] note: the method call chain might not have had the expected associated types
[INFO] [stdout]    --> src/ser_de.rs:214:14
[INFO] [stdout]     |
[INFO] [stdout] 213 |         let shape = (0..dim)
[INFO] [stdout]     |                     -------- this expression has type `Range<u8>`
[INFO] [stdout] 214 |             .map(|_| buf.try_get_i64())
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^ `Iterator::Item` is `Result<i64, TryGetError>` here
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]    --> /rustc/a2a6e871b05c7b8ecc9a3c8a20db1f39e995e399/library/core/src/iter/traits/iterator.rs:2014:5
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0034, E0277.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0034`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `impeller` (lib test) due to 7 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: could not compile `impeller` (lib) due to 7 previous errors
[INFO] [stdout] Some errors have detailed explanations: E0034, E0277.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0034`.
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0832e19c508490985d704182bcdb756bb0cfe766835c99d1ca7de277a629d23a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0832e19c508490985d704182bcdb756bb0cfe766835c99d1ca7de277a629d23a", kill_on_drop: false }`
[INFO] [stdout] 0832e19c508490985d704182bcdb756bb0cfe766835c99d1ca7de277a629d23a
